<?php
class Oeuvres_model extends CI_Model {

    // Constructeur du modèle
    public function __construct(){
        $this->load->database();
    }

    // Fonction de comptage du nombre d'oeuvres présentes en base
    function get_last_oeuvres_id(){
        $this->db->select_max('oeuvres_id');
        //$this->db->from('collages');
        $q = $this->db->get('oeuvres');
        
        if($q->num_rows()>0)
            {
                foreach($q->result() as $row)
                {
                        $data[] = $row;
                }
                return $data;
            }
            else
                return 0;
    }

    // Fonction d'ajout d'une oeuvre en base
    function add_oeuvres($data){
        return $this->db->insert('oeuvres',$data);
    }


    // Requete de récupération des oeuvres présentes en base de données
    function get_oeuvres(){

        // Création de la requête de récupération de toutes les oeuvres

        // Sélection des données à récupérées :
        // table oeuvres : oeuvres_id, oeuvres_fichier, oeuvres_locX, oeuvres_locY
        // table pensees : pensees_nom
        // table types : types_nom
        $this->db->select('oeuvres.oeuvres_id, oeuvres.oeuvres_fichier, oeuvres.oeuvres_locX, oeuvres.oeuvres_locY,
                            pensees.pensees_nom, types.types_nom');

        // Table dans laquelle on va chercher les données
        $this->db->from('oeuvres');

        // Jointure des tables 'oeuvres' et 'pensees', pour récupérer les données de la table 'pensees' (dont le champ 'pensees_nom' qui nous intéresse
        $this->db->join('pensees', 'oeuvres.fk_pensees_id = pensees.pensees_id');
        // Jointure des tables 'oeuvres' et 'types', pour récupérer les données de la table 'types' (dont le champ 'types_nom' qui nous intéresse
        $this->db->join('types', 'oeuvres.fk_types_id = types.types_id', 'left');
        // Classement des données par ordre de 'oeuvres_id' croissant
        $this->db->order_by('oeuvres_id','desc');
        // On ne sélectionne que les ouvres où le champ 'enfer' vaut 0
        $this->db->where('oeuvres_enfer', '0');

        $q = $this->db->get();
        if($q->num_rows()>0)
        {
            $data = array();
            foreach($q->result() as $row)
            {
                    $data[] = $row;
            }
            return $data;
        }
        
    }

}


?>